package com.yyq.adms.yyb.paper.pojo;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;

import com.yyq.sos.pojo.BaseEntity;

/**
 * 未备案论文
 * @author 杨应滨
 * @2012-12-5
 *
 */
@Entity
@Table(name = "unbakpaper")
public class UnBakPaper  extends BaseEntity implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	
	/**
	 * 论文名称
	 */
	private String paperName;
	
	/**
	 * 作者
	 */
	private String author;
	
	/**
	 * 刊物名称
	 */
	private String magazineName;
	
	/**
	 * 出版类型
	 */
	private String magazineType;//1：学术会议；2：学术期刊
	
	/**
	 * 中文核心
	 */
	private String majorInfo;//1：是；0：否
	
	/**
	 * 索引信息
	 */
	private String clueInfo;//1：SCI索引；2：EI索引；4：ISTP索引   该值为0~7范围，8种可能
	
	/**
	 * 发表时间
	 */
	private Date publishDate;
	
	/**
	 * 页码
	 */
	private String pageNum;  //通常是一个数据范围值，如：123-134
	
	/**
	 * 索引时间
	 */
	private Date clueDate;
	
	/**
	 * 所属部门
	 */
	private String belongDep;

	/**
	 * 所属平台ID
	 */
	private String belongPlateFormID;

	/**
	 * 报送单位
	 */
	private String sentDep;


	/**
	 * 批注
	 */
	private String endorse;
	
	
	/**
	 * 单位名称
	 */
	private String sentDepName;
	
	/**
	 * 是否全局可视
	 */
//	private Integer isGlobal;

	/**
	 * 是否有附件
	 */
//	private Integer isHavePatents;

	/**
	 * 是否可用
	 */
	private Integer isEnabled;

	/**
	 * 数据来源
	 */
//	private Integer sourceID;

	/**
	 * 是否提交总部
	 */
//	private Integer isSubmitTop;

	/**
	 * 所属年份，不需要加入数据库
	 */
	private String belongYear;

	public UnBakPaper() {
		super();
		this.sentDep="14";
		this.sentDepName="中交第四航务工程研究院有限公司";
	}

	public UnBakPaper(String paperName, String author, String magazineName,
			String magazineType, String majorInfo, String clueInfo,
			Date publishDate, String pageNum, Date clueDate,
			String belongDep, String belongPlateFormID,String sentDep,
			Integer isEnabled) {
		super();
		this.paperName = paperName;
		this.author = author;
		this.magazineName = magazineName;
		this.magazineType = magazineType;
		this.majorInfo = majorInfo;
		this.clueInfo = clueInfo;
		this.publishDate = publishDate;
		this.pageNum = pageNum;
		this.clueDate = clueDate;
		this.belongDep = belongDep;
		this.belongPlateFormID = belongPlateFormID;
		this.sentDep = sentDep;
//		this.isGlobal = isGlobal;
//		this.isHavePatents = isHavePatents;
		this.isEnabled = isEnabled;
//		this.sourceID = sourceID;
//		this.isSubmitTop = isSubmitTop;
	}

	@Column(name="author",length=100)
	public String getAuthor() {
		return author;
	}

	@Column(name="belongdep")
	public String getBelongDep() {
		return belongDep;
	}

	@Column(name="belongplateformid")
	public String getBelongPlateFormID() {
		return belongPlateFormID;
	}

	@Transient
	public String getBelongYear() {
		return belongYear;
	}

	@Column(name="cluedate")
	public Date getClueDate() {
		return clueDate;
	}

	@Column(name="clueinfo")
	public String getClueInfo() {
		return clueInfo;
	}

	@Column(name="isenabled")
	public Integer getIsEnabled() {
		return isEnabled;
	}

//	@Column(name="isglobal")
//	public Integer getIsGlobal() {
//		return isGlobal;
//	}
//
//	@Column(name="ishavepatents")
//	public Integer getIsHavePatents() {
//		return isHavePatents;
//	}
//
//	@Column(name="issubmittop")
//	public Integer getIsSubmitTop() {
//		return isSubmitTop;
//	}

	@Column(name="magazinename")
	public String getMagazineName() {
		return magazineName;
	}

	@Column(name="magazinetype")
	public String getMagazineType() {
		return magazineType;
	}


	@Column(name="majorinfo")
	public String getMajorInfo() {
		return majorInfo;
	}

	@Column(name="pagenum")
	public String getPageNum() {
		return pageNum;
	}

	@Column(name="papername")
	public String getPaperName() {
		return paperName;
	}

	@Column(name="publishdate")
	public Date getPublishDate() {
		return publishDate;
	}

	@Transient
	public String getSentDep() {
		return sentDep;
	}

//	@Column(name="sourceid")
//	public Integer getSourceID() {
//		return sourceID;
//	}

	public void setAuthor(String author) {
		this.author = author;
	}

	public void setBelongDep(String belongDep) {
		this.belongDep = belongDep;
	}

	public void setBelongPlateFormID(String belongPlateFormID) {
		this.belongPlateFormID = belongPlateFormID;
	}

	public void setBelongYear(String belongYear) {
		this.belongYear = belongYear;
	}

	public void setClueDate(Date clueDate) {
		this.clueDate = clueDate;
	}

	public void setClueInfo(String clueInfo) {
		this.clueInfo = clueInfo;
	}

	public void setIsEnabled(Integer isEnabled) {
		this.isEnabled = isEnabled;
	}

//	public void setIsGlobal(Integer isGlobal) {
//		this.isGlobal = isGlobal;
//	}
//
//	public void setIsHavePatents(Integer isHavePatents) {
//		this.isHavePatents = isHavePatents;
//	}
//
//	public void setIsSubmitTop(Integer isSubmitTop) {
//		this.isSubmitTop = isSubmitTop;
//	}

	public void setMagazineName(String magazineName) {
		this.magazineName = magazineName;
	}

	public void setMagazineType(String magazineType) {
		this.magazineType = magazineType;
	}


	public void setMajorInfo(String majorInfo) {
		this.majorInfo = majorInfo;
	}

	public void setPageNum(String pageNum) {
		this.pageNum = pageNum;
	}

	public void setPaperName(String paperName) {
		this.paperName = paperName;
	}

	public void setPublishDate(Date publishDate) {
		this.publishDate = publishDate;
	}

	public void setSentDep(String sentDep) {
		this.sentDep = sentDep;
	}

//	public void setSourceID(Integer sourceID) {
//		this.sourceID = sourceID;
//	}
	
	@Column(name="endorse")
	public String getEndorse() {
		return endorse;
	}

	public void setEndorse(String endorse) {
		this.endorse = endorse;
	}

	@Column(name="sentdepname")
	public String getSentDepName() {
		return sentDepName;
	}

	public void setSentDepName(String sentDepName) {
		this.sentDepName = sentDepName;
	}
	

}
